package com.shengcheng.service;

import com.shengcheng.entity.PaymentInfo;
import com.shengcheng.result.RetVal;
import com.baomidou.mybatisplus.extension.service.IService;
import com.wechat.pay.java.service.payments.model.Transaction;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.http.ResponseEntity;

import java.util.Map;

/**
 * <p>
 * 付款信息表 服务类
 * </p>
 *
 * @author 强哥
 * @since 2023-12-19
 */
public interface PaymentInfoService extends IService<PaymentInfo> {

    RetVal<Map<String, Object>> saveOrderAndDetail(String paymentType, String orderNo);

    PaymentInfo savePaymentInfo(String paymentType, String orderNo);

    ResponseEntity.BodyBuilder asyncNotify(HttpServletRequest request);

    void updatePaymentStatus(Transaction transaction);

    RetVal queryPayStatus(String orderNo);
}
